package com.woniu.account.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.woniu.account.dto.AdminLoginDto;
import com.woniu.account.dto.PageAdminDTO;
import com.woniu.account.dto.UserPointDto;
import com.woniu.account.form.*;
import com.woniu.account.model.TAdminInfo;
import com.woniu.core.util.PageInfo;


/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 吴彦祖
 * @since 2024年04月02日
 */
public interface TAdminInfoService extends IService<TAdminInfo> {

    AdminLoginDto adminLogin(LoginForm form) throws Exception;

    Boolean addAdminAccount(AddAdminForm form)throws Exception;

    Boolean sendLoginCode(String phone) throws Exception;

    AdminLoginDto adminCodeLogin(AdminInfoCodeLoginForm form) throws Exception;

    void adminChangePassword(ChangePasswordForm form) throws Exception;

    void setAdminAccountState(SetAccountStateForm form) throws Exception;

    void setCoachAccountState(SetCoachStateForm form) throws Exception;

    PageInfo<PageAdminDTO> getAdminByCondition(SearchAdminForm form)throws Exception;

    String uploadImage(UpdateImageForm form) throws Exception;

    String queryAdminNameById(Integer adminId)throws Exception;

    PageInfo<UserPointDto> queryAllUserPoint(Integer pageNum, Integer pageSize) throws Exception;
}
